package com.eaoa.vo.bus.base;

import java.io.Serializable;


/**
 * This is an object that contains data related to the bus_vehicle table.
 * Do not modify this class because it will be overwritten if the configuration file
 * related to this class is modified.
 *
 * @hibernate.class
 *  table="bus_vehicle"
 */

public abstract class BaseBusVehicle  implements Serializable {

	public static String REF = "BusVehicle";
	public static String PROP_CREATORNO = "creatorno";
	public static String PROP_CREATORNAME = "creatorname";
	public static String PROP_QUOTE = "quote";
	public static String PROP_DRIVER = "driver";
	public static String PROP_CREATEDATE = "createdate";
	public static String PROP_PHONE = "phone";
	public static String PROP_REMARKS = "remarks";
	public static String PROP_SIZE = "size";
	public static String PROP_BUYYEAR = "buyyear";
	public static String PROP_LOADWEIGHT = "loadweight";
	public static String PROP_VEHICLENO = "vehicleno";
	public static String PROP_ISLOCK = "islock";
	public static String PROP_VEHICLECODE = "vehiclecode";


	// constructors
	public BaseBusVehicle () {
		initialize();
	}

	/**
	 * Constructor for primary key
	 */
	public BaseBusVehicle (java.lang.Long vehicleno) {
		this.setVehicleno(vehicleno);
		initialize();
	}

	/**
	 * Constructor for required fields
	 */
	public BaseBusVehicle (
		java.lang.Long vehicleno,
		java.lang.String vehiclecode) {

		this.setVehicleno(vehicleno);
		this.setVehiclecode(vehiclecode);
		initialize();
	}

	protected void initialize () {}



	private int hashCode = Integer.MIN_VALUE;

	// primary key
	private java.lang.Long vehicleno;

	// fields
	private java.lang.String vehiclecode;
	private java.lang.String driver;
	private java.lang.String phone;
	private java.lang.String size;
	private java.lang.String loadweight;
	private java.lang.String quote;
	private java.lang.String remarks;
	private java.lang.String buyyear;
	private java.lang.String islock;
	private java.lang.Long creatorno;
	private java.lang.String creatorname;
	private java.util.Date createdate;



	/**
	 * Return the unique identifier of this class
     * @hibernate.id
     *  generator-class="increment"
     *  column="vehicleno"
     */
	public java.lang.Long getVehicleno () {
		return vehicleno;
	}

	/**
	 * Set the unique identifier of this class
	 * @param vehicleno the new ID
	 */
	public void setVehicleno (java.lang.Long vehicleno) {
		this.vehicleno = vehicleno;
		this.hashCode = Integer.MIN_VALUE;
	}




	/**
	 * Return the value associated with the column: vehiclecode
	 */
	public java.lang.String getVehiclecode () {
		return vehiclecode;
	}

	/**
	 * Set the value related to the column: vehiclecode
	 * @param vehiclecode the vehiclecode value
	 */
	public void setVehiclecode (java.lang.String vehiclecode) {
		this.vehiclecode = vehiclecode;
	}



	/**
	 * Return the value associated with the column: driver
	 */
	public java.lang.String getDriver () {
		return driver;
	}

	/**
	 * Set the value related to the column: driver
	 * @param driver the driver value
	 */
	public void setDriver (java.lang.String driver) {
		this.driver = driver;
	}



	/**
	 * Return the value associated with the column: phone
	 */
	public java.lang.String getPhone () {
		return phone;
	}

	/**
	 * Set the value related to the column: phone
	 * @param phone the phone value
	 */
	public void setPhone (java.lang.String phone) {
		this.phone = phone;
	}



	/**
	 * Return the value associated with the column: size
	 */
	public java.lang.String getSize () {
		return size;
	}

	/**
	 * Set the value related to the column: size
	 * @param size the size value
	 */
	public void setSize (java.lang.String size) {
		this.size = size;
	}



	/**
	 * Return the value associated with the column: loadweight
	 */
	public java.lang.String getLoadweight () {
		return loadweight;
	}

	/**
	 * Set the value related to the column: loadweight
	 * @param loadweight the loadweight value
	 */
	public void setLoadweight (java.lang.String loadweight) {
		this.loadweight = loadweight;
	}



	/**
	 * Return the value associated with the column: quote
	 */
	public java.lang.String getQuote () {
		return quote;
	}

	/**
	 * Set the value related to the column: quote
	 * @param quote the quote value
	 */
	public void setQuote (java.lang.String quote) {
		this.quote = quote;
	}



	/**
	 * Return the value associated with the column: remarks
	 */
	public java.lang.String getRemarks () {
		return remarks;
	}

	/**
	 * Set the value related to the column: remarks
	 * @param remarks the remarks value
	 */
	public void setRemarks (java.lang.String remarks) {
		this.remarks = remarks;
	}



	/**
	 * Return the value associated with the column: buyyear
	 */
	public java.lang.String getBuyyear () {
		return buyyear;
	}

	/**
	 * Set the value related to the column: buyyear
	 * @param buyyear the buyyear value
	 */
	public void setBuyyear (java.lang.String buyyear) {
		this.buyyear = buyyear;
	}



	/**
	 * Return the value associated with the column: islock
	 */
	public java.lang.String getIslock () {
		return islock;
	}

	/**
	 * Set the value related to the column: islock
	 * @param islock the islock value
	 */
	public void setIslock (java.lang.String islock) {
		this.islock = islock;
	}



	/**
	 * Return the value associated with the column: creatorno
	 */
	public java.lang.Long getCreatorno () {
		return creatorno;
	}

	/**
	 * Set the value related to the column: creatorno
	 * @param creatorno the creatorno value
	 */
	public void setCreatorno (java.lang.Long creatorno) {
		this.creatorno = creatorno;
	}



	/**
	 * Return the value associated with the column: creatorname
	 */
	public java.lang.String getCreatorname () {
		return creatorname;
	}

	/**
	 * Set the value related to the column: creatorname
	 * @param creatorname the creatorname value
	 */
	public void setCreatorname (java.lang.String creatorname) {
		this.creatorname = creatorname;
	}



	/**
	 * Return the value associated with the column: createdate
	 */
	public java.util.Date getCreatedate () {
		return createdate;
	}

	/**
	 * Set the value related to the column: createdate
	 * @param createdate the createdate value
	 */
	public void setCreatedate (java.util.Date createdate) {
		this.createdate = createdate;
	}




	public boolean equals (Object obj) {
		if (null == obj) return false;
		if (!(obj instanceof com.eaoa.vo.bus.BusVehicle)) return false;
		else {
			com.eaoa.vo.bus.BusVehicle busVehicle = (com.eaoa.vo.bus.BusVehicle) obj;
			if (null == this.getVehicleno() || null == busVehicle.getVehicleno()) return false;
			else return (this.getVehicleno().equals(busVehicle.getVehicleno()));
		}
	}

	public int hashCode () {
		if (Integer.MIN_VALUE == this.hashCode) {
			if (null == this.getVehicleno()) return super.hashCode();
			else {
				String hashStr = this.getClass().getName() + ":" + this.getVehicleno().hashCode();
				this.hashCode = hashStr.hashCode();
			}
		}
		return this.hashCode;
	}


	public String toString () {
		return super.toString();
	}


}